package ioc.config;

import ioc.bean.Dog;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;

@Configuration
@ComponentScan("ioc") // 默认扫描当前包(Bean_Life_Cycle)及其子包(Bean_Life_Cycle.*)
public class BeanLifeCycleConfig {
    /**
     * 指定初始化和销毁方法：通过 @Bean 指定 init-method 和 destroy-method；
     * 多实例：容器不会管理这个 bean，容器关闭时也不会调用销毁方法；
     */
    // @Scope("prototype")
    @Bean(initMethod = "initx", destroyMethod = "destoryx")
    public Dog dog() {
        return new Dog();
    }
}
